diff --git a/drivers/net/ethernet/xilinx/xilinx_lltemac/xlltemac_main.c b/drivers/net/ethernet/xilinx/xilinx_lltemac/xlltemac_main.c
index 0d52d9f..ffcf938 100644
--- a/drivers/net/ethernet/xilinx/xilinx_lltemac/xlltemac_main.c
+++ b/drivers/net/ethernet/xilinx/xilinx_lltemac/xlltemac_main.c
@@ -564,7 +564,7 @@ static void phy_setup(struct net_local *lp)
 	/*
 	 * Setup the PHY control register
 	 */
-	Register = BMCR_SPEED1000 | BMCR_FULLDPLX | BMCR_ANENABLE;
+	Register = BMCR_SPEED1000 | BMCR_FULLDPLX;
 	_XLlTemac_PhyWrite(&lp->Emac, lp->gmii_addr, MII_BMCR, Register);
 
 #endif /* CONFIG_XILINX_LLTEMAC_XILINX_1000BASEX */
@@ -3320,7 +3320,7 @@ static int xtenet_remove(struct device *dev)
  *  0x0040: MF Preamble suppression support
  *  0x0008: Auto-negotiation support
  */
-#define PHY_DETECT_MASK 0x01C8
+#define PHY_DETECT_MASK 0x01C0
 #else
 /* Mask used to verify certain PHY features (or register contents)
  * in the register above:
diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c
index bf6c5cf..243e388 100644
--- a/net/ipv4/ipconfig.c
+++ b/net/ipv4/ipconfig.c
@@ -115,6 +115,8 @@
  */
 int ic_set_manually __initdata = 0;		/* IPconfig parameters set manually */
 
+unsigned int ic_mtu __initdata = 0;		/* IPconfig MTU parameter: 0 - defaults, other - override */
+
 static int ic_enable __initdata = 0;		/* IP config enabled? */
 
 /* Protocol choice */
@@ -232,6 +234,12 @@ static int __init ic_open_devs(void)
 			able &= ic_proto_enabled;
 			if (ic_proto_enabled && !able)
 				continue;
+			if (ic_mtu > 0)
+			{
+				printk(KERN_ERR "IP-Config: Overriding %s MTU to %d bytes\n", dev->name, ic_mtu);
+				dev->mtu = ic_mtu;
+			}
+
 			oflags = dev->flags;
 			if (dev_change_flags(dev, oflags | IFF_UP) < 0) {
 				pr_err("IP-Config: Failed to open %s\n",
@@ -1663,6 +1671,15 @@ static int __init ip_auto_config_setup(char *addrs)
 }
 __setup("ip=", ip_auto_config_setup);
 
+static int __init mtu_config_setup(char *str)
+{
+	if (!str)
+		return 0;
+	ic_mtu = simple_strtoul(str, &str, 0);
+	return 1;
+}
+__setup("ipmtu=", mtu_config_setup);
+
 static int __init nfsaddrs_config_setup(char *addrs)
 {
 	return ip_auto_config_setup(addrs);
